BUILD-RESULT — rdmodelrouter usage verifier fix
2026-09-27 15:14:58 EDT → 2026-09-27 15:20:03 EDT · rdmsm4x Builder
codex@rdmsm4x/rmrusagefix; lead rdmodelrouter@rdmsm4x/rmr0926. Ticket
FEAT-20260927-20. Prototype. Branch rmr/usage-fix-20260927.
Base 7c5e194bbf103f703463aecaf6456fd57808ebee; initially
clean worktree. Worktree:
/Users/richh/dev/_worktrees/rdmodelrouter-usagefix-20260927.
Result
VERIFY-1's required fix is implemented. Fresh canonical quota rows skip official CLI sign-in probes only when a recognized explicit login_state is present. Without it, the existing official check runs; its result retains the canonical Tyrell / ECSQuotaKit quota label. Absent/stale quota coverage retains the degraded label. Quota alone does not manufacture a successful local sign-in. DEC-RMR-31 now states this distinction.
The new fixture-derived regression removes login_state from all rows and adds Claude coverage alongside iCloud Codex. It uses a fixture directory as CODEX_HOME and an injected command runner: no auth-file reads or actual provider calls. Both official commands must run, active results remain active, failed checks remain missing, and canonical provenance remains visible. Existing canonical skip coverage now checks both active and not-signed-in states and preserves Gmail's unverified selector.
Installer repair
The status builder already resolves SwiftPM's actual binary directory
under its process-local toolchain selection. It now copies the gated
universal CLI into .build/status-app/rdmodelrouter beside
the matching app. The installer consumes that exact staged artifact and
validates both slices before staging dist. It no longer recomputes a
potentially different SwiftPM output path in the parent shell. A legacy
--skip-build tree without the staged CLI fails clearly and asks for a
rebuild; it never silently installs an unrelated binary.
Full install was intentionally not run: even
--no-notarize --no-open changes ~/bin, ~/Applications and
potentially config. Only worktree builds and extracted path/staging
logic were executed. Signing, notarization, install and GUI acceptance
are not claimed.
Validation
| Check | Result | Evidence in run folder |
|---|---|---|
| Default swift test, --jobs 2 through build_slot | 97 tests / 14 suites / 0 failures; rc 0 | tests.log |
| RMR_DISABLE_QUOTA_KIT=1, separate .build/noquota scratch path | 97 / 14 / 0; rc 0 | tests-noquota.log |
| Universal status build | rc 0; CLI + app x86_64 arm64, Intel minos 26.7 | build-status-app.log |
| Installer path proof | 4 cases passed; relocated bytes identical | install-path-proof.log, verify-install-path.py |
| Shell syntax | both scripts zsh -n rc 0 | build/install scripts |
| Whitespace | git diff --check rc 0 | committed diff |
| Secret scan | 57 in-memory candidates, 235 reachable blobs, 87 files and current transcript; zero findings; controls passed | secret-scan.log |
The path proof runs the exact CLI staging line and installer resolution/gate block, without any sign/install/open commands. It accepts the real staged universal CLI and arbitrary output directory with spaces, and rejects missing and arm64-only artifacts. Fixtures are retained in the run folder. The rebuilt CLI reports 0.2.0; this task does not change version metadata. Existing SDK/deprecation warnings remain; no build/test errors. Live account/provider state was not remeasured.
Scope, continuity and next action
Changed source: AccountStatusReader.swift, PublishedUsageTests.swift, DECISIONS.md, scripts/build-status-app.zsh and scripts/install-local.zsh. SESSION-STATE.md and this BUILD-RESULT.md record delivery. Build output is ignored and not committed. No Tyrell, ~/.tyrell, ~/dev/lib, installed app, installed CLI or config edits. No paid calls, proxies, credential-file reads, login operations, outbound messages, merge or push. Secret comparison reads existing .env sources only in memory.
Claim acquired for this worktree as codex@rdmsm4x/rmrusagefix. Preflight reported aged fleet-wide HIGH mail; no outbound acknowledgements were sent under the task's no-outbound scope. No competing claim on FEAT-20260927-20 existed. No workers were spawned for this bounded repair.
Apple Notes PENDING: launchctl managername is Background. Per fleet-notes-publish, retain changelog copies in ~/dev/LLM/Claude/changelogs and ~/dev/LLM/Codex/changelogs; no GUI workaround attempted. No owner action is needed for this source delivery.
Resume: independently verify this branch and the artifacts in
/Users/richh/dev/_handoff/rdmodelrouter-usagefix-20260927.
Integration stays with the lead; this builder commits only. Undo source
changes by reverting the delivery commit on a new branch; previous
installed binaries were never changed.